Madge Token-Ring Pre-Compiled Driver Software For Linux - Release 2.52 ====================================================================== Contents -------- 1. Platforms Supported 2. Adapters Supported 3. Installation 4. Command Line Parameters 5. Contents of the Distribution 6. Kernel Improvements for Cardbus Support 7. Madge Support and Contact Information 1. Platforms supported ====================== This driver has been tested on uniprocessor kernel versions:- 2.0.36 2.2.5-15 2.2.10 2.2.12-20 2.4.2-12 2.4.7-10 2.4.18-3 2.4.18-14 2.4.20-8 This includes support for RedHat Linux 9.0 Note: This driver software cannot be installed on symmetric multiprocessing (smp) kernel versions. 2. Adapters Supported ===================== The following Madge Token-Ring adapters are supported: * 51-05 Smart Mk4 PCI Adapter * 53-05 Smart Mk4 PCI Adapter (low profile) * 3140 2010 Rapidfire 3140V2 16/4 TR PCI Adapter * 31-04 RapidFire 3140V2 16/4 TR PCI Adapter (Low Profile) * 20-03 Smart 16/4 CardBus Mk2 3. Installation =============== Execute the installation script as root as follows:- ./install This will unload any previous Madge Token Ring Drivers and load the new driver. The MadgeConfig program will then be called to configure the adapters. MadgeConfig generates a file that is suitable to be inserted into /etc/modules.conf The rest of the installation script inserts this file into modules.conf and does some distribution specific installation too. If you have a non standard setup or wish to do the installation manually then please copy the files from release/// to your module directory. The mtok module should be placed under the net sub directory and mtok_cs and mtok_cb should be placed under the pcmcia sub directory. Please read the following documents for helpful background information on configuring your Linux system:- http://metalab.unc.edu/LDP/HOWTO/mini/Token-Ring.html http://metalab.unc.edu/LDP/HOWTO/mini/Modules.html http://pcmcia-cs.sourceforge.net/ftp/doc/PCMCIA-HOWTO.html The 2.4.18-* and 2.4.20-* directories in the release folder contain binaries for PCI Adapters while the corresponding 2.4.*custom directories contain binaries for Cardbus. The suffix "custom" above is because the Cardbus driver was built on a vendor modified kernel version, with the string "custom" in EXTRAVERSION of /usr/src/linux-2.4/Makefile. Unresolved symbol problem --------------------------- If while trying to install the driver binaries, you are getting unresolved symbol, then the reason could be the symbol table of the currently running kernel "/proc/ksyms" is not having some symbols defined in the kernel in which the driver was compiled with. To resolve this please try to compile the driver source available from the website http:\\www.madge.com Copy the mtok*.o generated into mtokbin/release//UP|SMP directory and then issue ./install. Prerequisites before compiling the driver are as follows: 1. Remove the "custom" string from Extraversion in /usr/src/linux-2.4/Makefile (optional) 2. Run "make menuconfig". Do not edit anything, Save the kernel configuration and exit. It will generate ".config" file needed to compile the driver 3. Run "make dep".It will resolve all the dependancy and make the driver compatible with the currently running kernel. If you are removing the "custom" string from Extraversion, then the module installation directory will be /lib/modules/ otherwise it will be /lib/modules/custom. 4. Command Line Options ======================= The Token-Ring driver module mtok.o supports several command line options. Each option is specified using its name and then a comma separated list of values corresponding to each Token Ring adapter controlled by the driver. For example:- insmod mtok ringspeed=16,0,100 This means tr0 will open at 16 MBps, tr1 will try to auto detect or use the default value for the adapter and tr2 will try to open at 100MBps. The driver options are list below:- ringspeed=N Specifies that the adapter should operate at the following ring speed: N=0 -> The ring speed to which the adapter has been programmed. N=4 -> 4 MBit/s N=16 -> 16 MBit/s N=100 -> 100 MBit/s dtr=N Specifies in which mode the adapter should open. N=0 -> Either DTR or Classic Mode (DTR on a switch port and classic on a shared hub). N=1 -> DTR mode only. N=2 -> Classic mode only. pcmcia=1 Normally the driver will only stay loaded in memory if it successfully finds and configures an adapter. However if a PCMCIA/CardBus adapter is to be used the driver must always be resident. Using the parameter pcmcia=1 ensures that the driver stays resident. txslots=N Specifies the number of transmit slots to be used. The default depends on the adapter type. Increasing this number uses more memory but allows more frames to be queued on the adapter for transmission. It is not advisable to queue too many transmits as this may interfere with higher layer flow control and queueing algorithms. rxslots=N Specifies the number of receive slots to be used. If this parameter is increased then more memory will be used by the driver but more frames can be queued for reception. maxframesize=N Specifies the maximum frame size the adapter will be able to receive. This parameter has a maximum value of 4486 for an adapter running at 4MBps and 17814 for adapters running at 16 and 100MBps. The default value is 2040. Performance improvements may be obtained by increasing this parameter if other machines on the network are also capable of sending and receiving large frames. 5. Contents of the Distribution =============================== ./ README - This file. MadgeConfig - The executable program for configuring adapters. install - The install script The mtok.o, mtok_cs.o and mtok_cb.o files can be found under the release directory. 6. Kernel Improvements for Cardbus Support ========================================== The Madge Linux Token Ring driver supports the Madge Cardbus Mk2 Token Ring adapter. However, the driver is dependent upon a card services implementation for Linux. There are known problems with some PCMCIA and Cardbus controllers with the Linux card services implementation. Please see http://pcmcia-cs.sourceforge.net for more information. If problems are experienced when using the standard card services installed with the kernel then it is recommended that you update to the latest card services software. This can be obtained from http://pcmcia-cs.sourceforge.net. Then look in the foundries for pcmcia card services. Use of CardBus cards with 2.0.* kernels is discouraged. It may work on some systems, but not on others, due to PCI BIOS limitations. Also, it is harder to diagnose problems, because /proc/bus/pccard is not available with these kernels. Note that from Redhat Linux 7.3(kernel version 2.4.18-3) the kernel pcmcia-cs source tree does not have "cb_enabler.c" file which is needed to register the client driver to the driver services. In this case, you need to download the latest pcmcia-cs source tree from the above mentioned site. To ensure that Madge CardBus adapter works in 2.4.18/2.4.20 series kernels, you should do the following: 1. Compile the kernel without "CONFIG_PCMCIA" support. 2. Compile the latest pcmcia-cs source tree (At the time of testing, pcmcia-cs-3.2.4 was used) Please go through the PCMCIA-HOWTO and README in the pcmcia-cs source tree for compilation help. When compiling and installing new card services software it is better to also compile the driver sources. This avoid problem like symbols not matching with those in the symbol table. The Madge driver source is available from the website http:\\www.madge.com Then change PCIC=yenta_socket to PCIC=i82365 in /etc/sysconfig/pcmcia and then reboot the system or stop-start the PCMCIA service by issuing the command "service pcmcia stop"-"service pcmcia start" Issue ./install to install the driver. 7. Madge Support and Contact Information ======================================== Visit Madge at http://www.madge.com For technical support go to the website to find the appropriate telephone number or email contact: http://www.madge.com/support.asp **** End of README ****